home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’96 / Booting Gallery / Booting Gallery (source) / (Libraries) / Fluent Libraries / Queue Objects / ObjectList.h next >
Encoding:
Text File  |  1996-06-22  |  866 b   |  53 lines  |  [TEXT/BROW]

  1. // ObjectList.h
  2. // Created by Bill Hubauer on Sun, May 28, 1995 @ 4:07 PM.
  3.  
  4. #ifndef __ObjectList__
  5. #define __ObjectList__
  6.  
  7. #ifndef __ObjectQueue__
  8. #include "ObjectQueue.h"
  9. #endif
  10.  
  11. #ifndef __HeapObjects__
  12. #include "HeapObjects.h"
  13. #endif
  14.  
  15.  
  16.  
  17. class CObjectList : public CObjectQueue
  18. {
  19. public:
  20.     CObjectList();
  21.     virtual ~CObjectList();
  22.     
  23.     
  24.     OSErr        AppendObject(void* object);
  25.     void        RemoveObject(MQueueElem* objectElem);
  26.     
  27.  
  28.  
  29.  
  30.     static void    SetObjectHeap(CHeap* theHeap)        {_objectHeap = theHeap;}
  31.     static CHeap*        _objectHeap;
  32.     
  33. };
  34.  
  35.  
  36. class    CListElem:public MQueueElem
  37. {
  38.     public:
  39.         CListElem(void* data);
  40.         virtual ~CListElem();
  41.         void*    GetData()            {return _data;}
  42.         
  43.         void operator delete(void *x)        { CObjectList::_objectHeap->Free((Ptr)x);}
  44.         void *operator new(UInt32 theSize)    { return CObjectList::_objectHeap->Allocate(theSize);}
  45.  
  46.     private:
  47.         void*        _data;
  48. };
  49.  
  50.  
  51.  
  52. #endif
  53.